package com.efast.dmom.equipment.service.checkingReport.impl;

import java.util.ArrayList;
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.efast.dmom.equipment.bean.EquipStatusSumBean;
import com.efast.dmom.equipment.bean.checkingreport.EquipCheckingReportParamBean;
import com.efast.dmom.equipment.bean.checkingreport.EquipCheckingReportReturnBean;
import com.efast.dmom.equipment.dao.checkingreport.EquipCheckingReportDao;
import com.efast.dmom.equipment.service.checkingReport.EquipCheckingReportService;

@Service
public class EquipCheckingReportServiceImpl implements EquipCheckingReportService {

	@Autowired
	private EquipCheckingReportDao equipCheckingReportDao;
	
	//本周不同状态数量
	@Override
	public List<EquipCheckingReportReturnBean> getWeeklyCheckingTask(EquipCheckingReportParamBean paramBean) {
		List<EquipCheckingReportReturnBean> list=new ArrayList<EquipCheckingReportReturnBean>();
		EquipCheckingReportReturnBean reportReturnBean=null;
		List<EquipStatusSumBean> list1=equipCheckingReportDao.getWeeklyCheckingTask();
		List<String> paramBeanStatus=paramBean.getTaskStatus();
		if(paramBeanStatus!=null&&paramBeanStatus.size()>0) {
		   if(list1!=null&&list1.size()>0) {
		     for(String bean:paramBeanStatus) {
			     for(EquipStatusSumBean e:list1){
			 	     if(bean.equals(e.getStatus())) {
			 	    	reportReturnBean = new EquipCheckingReportReturnBean();
					     reportReturnBean.setTaskStatus(e.getStatus());
					     reportReturnBean.setTaskCount(e.getSum());
					     list.add(reportReturnBean);
			       }
			     }
			  }
		  }
	  }
		return list;
	}
 
	//本月不同状态数量
	@Override
	public List<EquipCheckingReportReturnBean> getMonthlyCheckingTask(EquipCheckingReportParamBean paramBean) {
		List<EquipCheckingReportReturnBean> list=new ArrayList<EquipCheckingReportReturnBean>();
		EquipCheckingReportReturnBean reportReturnBean=null;
		List<EquipStatusSumBean> list1=equipCheckingReportDao.getMonthlyCheckingTask();
		List<String> paramBeanStatus=paramBean.getTaskStatus();
		if(paramBeanStatus!=null&&paramBeanStatus.size()>0) {
		   if(list1!=null&&list1.size()>0) {
		      for(String bean:paramBeanStatus) {
			     for(EquipStatusSumBean e:list1) {
			 	     if(bean.equals(e.getStatus())) {
			 	    	reportReturnBean=new EquipCheckingReportReturnBean();
					     reportReturnBean.setTaskStatus(e.getStatus());
					     reportReturnBean.setTaskCount(e.getSum());
					     list.add(reportReturnBean);
				       }
			       }
			  }
		  }
	  }
		return list;
	}

	//本年不同状态数量
	@Override
	public List<EquipCheckingReportReturnBean> getYearlyCheckingTask(EquipCheckingReportParamBean paramBean) {
		List<EquipCheckingReportReturnBean> list=new ArrayList<EquipCheckingReportReturnBean>();
		EquipCheckingReportReturnBean reportReturnBean=null;
		List<EquipStatusSumBean> list1=equipCheckingReportDao.getYearlyCheckingTask();
		List<String> paramBeanStatus=paramBean.getTaskStatus();
		if(paramBeanStatus!=null&&paramBeanStatus.size()>0) {
		   if(list1!=null&&list1.size()>0) {
		      for(String bean:paramBeanStatus) {
			     for(EquipStatusSumBean e:list1) {
			 	     if(bean.equals(e.getStatus())) {
			 	    	 reportReturnBean=new EquipCheckingReportReturnBean();
					     reportReturnBean.setTaskStatus(e.getStatus());
					     reportReturnBean.setTaskCount(e.getSum());
					     list.add(reportReturnBean);
				       }
			       }
			  }
		  }
	  }
		return list;
	}

	//所有不同的点检状态数量
	@Override
	public List<EquipCheckingReportReturnBean> getAllCheckingTask(EquipCheckingReportParamBean paramBean) {
		List<EquipCheckingReportReturnBean> list=new ArrayList<EquipCheckingReportReturnBean>();
		EquipCheckingReportReturnBean reportReturnBean=null;
		List<EquipStatusSumBean> list1=equipCheckingReportDao.getAllCheckingTask();
		List<String> paramBeanStatus=paramBean.getTaskStatus();
		if(paramBeanStatus!=null&&paramBeanStatus.size()>0) {
		   if(list1!=null&&list1.size()>0) {
		      for(String bean:paramBeanStatus) {
			     for(EquipStatusSumBean e:list1) {
			 	     if(bean.equals(e.getStatus())) {
			 	    	 reportReturnBean=new EquipCheckingReportReturnBean();
					     reportReturnBean.setTaskStatus(e.getStatus());
					     reportReturnBean.setTaskCount(e.getSum());
					     list.add(reportReturnBean);
				       }
			       }
			  }
		  }
	  }
		return list;
	}	

}
